Centos升级docker后启动容器报错“unknown or invalid runtime name” 您所在的位置:网站首页 qq出现runtime error Centos升级docker后启动容器报错“unknown or invalid runtime name”

Centos升级docker后启动容器报错“unknown or invalid runtime name”

2023-06-16 10:46| 来源: 网络整理| 查看: 265

前言 操作系统为centosdocker原来的版本为1.31.1,升级后为20结尾有升级docker的教程听说图片能凑字数,就截图贴了 插播一个问题记录

重装docker之后试试这个,折腾一上午 https://blog.csdn.net/weixin_43448598/article/details/109412104

我是分割线

加入后面出现无法强制删除镜像文件时,或者报错(无法创建容器) 按照如下解决 在这里插入图片描述

1. 报错原因

“因为Docker的默认运行时环境runc被升级或替换所导致的。”

2. 解决过程

在这里插入图片描述

【提问】:

我在升级docker后,无法启动容器,报错信息如下,请问我该如何做 “”Error response from daemon: unknown or invalid runtime name: docker-runc“

【回答】:

这个问题通常是因为Docker的默认运行时环境runc被升级或替换所导致的。

为了解决这个问题,你可以尝试以下步骤:

确认是否已经安装了新的运行时环境,例如“containerd”或“cri-o”等,以取代原来的runc。如果是,则应该相应地更改Docker的运行时环境。

如果未更改Docker运行时环境,可以尝试重新安装Docker,以便恢复缺失的runc运行时环境。

如果重新安装Docker后仍然出现问题,则可以尝试使用旧版本的Docker,这通常可以通过将docker的版本降低到之前的版本来实现。

最后,你还可以尝试升级或更新docker-compose,因为它也可能会影响Docker运行时环境的配置。

希望这些方法能够帮助你解决这个问题。如果问题仍然存在,请提供更多的详细信息,以便我们提供更准确的帮助。

![在这里插入图片描述](https://img-blog.csdnimg.cn/58defdf9c74e4850aeed966a64a57921.png) 【提问】:

能将步骤1具体化一点吗,我现在是centos系统

【回答】:

好的,下面是针对CentOS系统的具体步骤:

确认已安装新的运行时环境

使用以下命令来检查是否已在CentOS系统上安装了新的运行时环境:

systemctl status containerd

如果输出的结果显示containerd服务已经运行,则说明containerd已经安装在系统中。

如果未安装containerd,可以通过以下命令安装:

yum install -y containerd.io 更改Docker的运行时环境

如果你已经确认新的运行时环境已经安装在你的系统中,那么需要更改Docker的配置,以便Docker可以使用新的运行时环境。

编辑Docker的配置文件/etc/docker/daemon.json,添加以下内容:(没有该文件就新建一个)

{ "default-runtime": "containerd", "runtimes": { "containerd": { "path": "/usr/bin/containerd" } } }

保存文件并重启Docker:

systemctl restart docker

现在,Docker应该能够正常使用新的运行时环境了。

请注意,如果你使用的是其他运行时环境,例如cri-o等,你需要相应地更改default-runtime和runtimes的值。

希望这可以帮助你解决问题。如果你需要更多的帮助,请告诉我。

结尾

另附上centos升级docker教程 原文传送门



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有